{
  "summary": "A lot of fixing and refactoring, rename user table, add login and logout functionality, implement password hashing",
  "dedicated_hours": 8
}

Relevant commits:
  - 4cf9e52eda73717cc5e1433b56b6987c6d8a3b32 [CACHE] Tiny fix
  - 14471bd49c18f5ab6eb4662147fe2f32812d5096 [DB] Re-import the local_group table, as it'll be used as per the new group semantics
  - f612e7653ddf90cfc5064e711c51bb2349880bd4 [DB][WRAPPER] Add findBy method which allows finding entities with a complex expression
  - 8fbaa1019b4d13acac584d311be016039a89165e [DEFAULTS] Update default reserved usernames
  - 643c4f37c05547181856c3da946c490825939370 [UTIL][NICKNAME] Import nickname utilities and exceptions from v2
  - e09fbf32dac403f6e8a388857dcb808ba1f77130 [REFACTOR] Change methods in the Common class to camelCase, add isSystemPath (previously in Nickname.php)
  - 03d521f460aa0323d2c11d48ba84cfc2595982c9 [I18n] Remove I18nHelper
  - cfadcfb171bde7288e8d4dbdcab213a2d1b4a04f [CONFIG] Change way configuration is done to use Symfony's system instead of environment vars
  - 21847e9a8d8e64b2f74e84a949db1f4cc0aa72ea [DEPENDENCY] Add symfony/config as a dependency
  - c314ac2a2b7944161df6896a33aaa9aba6625c52 [DB] Rename user table to local_user, since doctrine shits itself otherwise ._.
  - 78988a8a4e3a124db98a1b5f909769e20f2406e3 [AUTOGENERATED] Update autogenerated code
  - 82665ec7869fefd238fa765284196d5d55af4316 [TOOLS] Update shebang on scripts to use the correct php executable
  - 147149cf69a92e24b926173afa60ca908e3b82f3 [I18N] Remove support for context until it proves necessary, as it broke the code
  - 34b45a54bcea26af1f4a0e359948300a558d3918 [REFACTOR] Refactor GNUsocial.php so it initializes itself as a service
  - f36d0963a500eca97efb9ce6eb91a28debb76b7a [UTILS] Make Common::config return the unserialized value instead of the entity
  - b62058a23f2292d89e4d400ba5c73017da66f418 [UTILS] Remove Functional::arity as it got merged upstream as Functional\ary
  - 3bfbf4a5ff73c1ee6df5262c303e2771ab9c40b4 [UI][SESSION] Add login and logout pages
  - Break
  - da63805a2761df8a4fd7acf8e0d50411c8da8930 [DEFAULTS][FIX] Fix logic error that kept reloading the table when the file wasn't modified
  - 3b818ce3c40f91c61d4b03f1bc30cf1132a262cd [UTIL] Update Common::config to ensure the values queried exist
  - e60b668294d99188875a386d56a3eb206e0d8995 [DB] Add role collumn to profile table
  - 8aaa6768eccde9c4a430a403b0c39268c81e8c94 [USER] Add UserRoles
  - 13e7830b7df027d49fbfd2d9bab35cefe420d2ae [LOGIN] Implement password checking and related systems
  - d9f95d91df06dcd199cca2725b30bc51b24807f1 [DEFAULTS] Add password hashing algorithm default settings
  - 5084f94ff7d6dfffa52a27784499693cdf822c32 [CONTROLLER] Remove example enqueue
